<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">

<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>mxEdgeStyleFunction</title><link rel="stylesheet" type="text/css" href="../../styles/main.css"><script language=JavaScript src="../../javascript/main.js"></script><script language=JavaScript src="../../javascript/prettify.js"></script><script language=JavaScript src="../../javascript/searchdata.js"></script></head><body class="ContentPage" onLoad="NDOnLoad();prettyPrint();"><script language=JavaScript><!--
if (browserType) {document.write("<div class=" + browserType + ">");if (browserVer) {document.write("<div class=" + browserVer + ">"); }}// --></script>

<!--  Generated by Natural Docs, version 1.51 -->
<!--  http://www.naturaldocs.org  -->

<!-- saved from url=(0026)http://www.naturaldocs.org -->




<div id=Content><div class="CInterface"><div class=CTopic id=MainTopic><h1 class=CTitle><a name="mxEdgeStyleFunction"></a>mxEdgeStyleFunction</h1><div class=CBody><p>Defines the requirements for an edge style function.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SMain"><td class=SEntry><a href="#mxEdgeStyleFunction" >mxEdgeStyleFunction</a></td><td class=SDescription>Defines the requirements for an edge style function.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxEdgeStyleFunction.Functions" >Functions</a></td><td class=SDescription></td></tr><tr class="SFunction SIndent2 SMarked"><td class=SEntry><a href="#mxEdgeStyleFunction.apply" id=link1 onMouseOver="ShowTip(event, 'tt1', 'link1')" onMouseOut="HideTip('tt1')">apply</a></td><td class=SDescription>Implements an edge style function. </td></tr><tr class="SClass"><td class=SEntry><a href="#mxEntityRelation" >mxEntityRelation</a></td><td class=SDescription>Implements an entity relation style for edges (as used in database schema diagrams). </td></tr><tr class="SClass"><td class=SEntry><a href="#mxLoop" >mxLoop</a></td><td class=SDescription>Implements a self-reference, aka. </td></tr><tr class="SClass"><td class=SEntry><a href="#mxElbowConnector" >mxElbowConnector</a></td><td class=SDescription>Uses either &lt;SideToSide&gt; or &lt;TopToBottom&gt; depending on the horizontal flag in the cell style. </td></tr><tr class="SClass"><td class=SEntry><a href="#mxSideToSide" >mxSideToSide</a></td><td class=SDescription>Implements a vertical elbow edge. </td></tr><tr class="SClass"><td class=SEntry><a href="#mxTopToBottom" >mxTopToBottom</a></td><td class=SDescription>Implements a horizontal elbow edge. </td></tr><tr class="SClass"><td class=SEntry><a href="#mxEdgeStyle" >mxEdgeStyle</a></td><td class=SDescription>Provides various edge styles to be used as the values for <a href="../util/mxConstants-php.html#mxConstants.STYLE_EDGE" class=LVariable id=link2 onMouseOver="ShowTip(event, 'tt2', 'link2')" onMouseOut="HideTip('tt2')">mxConstants.STYLE_EDGE</a> in a cell style.</td></tr><tr class="SGroup SIndent1"><td class=SEntry><a href="#mxEdgeStyle.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxEdgeStyle.EntityRelation" id=link3 onMouseOver="ShowTip(event, 'tt3', 'link3')" onMouseOut="HideTip('tt3')">EntityRelation</a></td><td class=SDescription>Provides an entity relation style for edges (as used in database schema diagrams).</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxEdgeStyle.Loop" id=link4 onMouseOver="ShowTip(event, 'tt4', 'link4')" onMouseOut="HideTip('tt4')">Loop</a></td><td class=SDescription>Provides a self-reference, aka. </td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxEdgeStyle.ElbowConnector" id=link5 onMouseOver="ShowTip(event, 'tt5', 'link5')" onMouseOut="HideTip('tt5')">ElbowConnector</a></td><td class=SDescription>Provides an elbow connector.</td></tr><tr class="SVariable SIndent2"><td class=SEntry><a href="#mxEdgeStyle.SideToSide" id=link6 onMouseOver="ShowTip(event, 'tt6', 'link6')" onMouseOut="HideTip('tt6')">SideToSide</a></td><td class=SDescription>Provides a side to side connector.</td></tr><tr class="SVariable SIndent2 SMarked"><td class=SEntry><a href="#mxEdgeStyle.TopToBottom" id=link7 onMouseOver="ShowTip(event, 'tt7', 'link7')" onMouseOut="HideTip('tt7')">TopToBottom</a></td><td class=SDescription>Provides a top to bottom connector.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyleFunction.Functions"></a>Functions</h3></div></div>

<div class="CFunction"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyleFunction.apply"></a>apply</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function apply(</td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$state,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$source,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$target,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$points,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap>&amp;</td><td class="PParameter  prettyprint " nowrap>$result</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote><p>Implements an edge style function.&nbsp; At the time the function is called, the result array contains a placeholder (null) for the first absolute point, that is, the point where the edge and source terminal are connected.&nbsp; The implementation of the style then adds all intermediate waypoints except for the last point, that is, the connection point between the edge and the target terminal.&nbsp; The first ant the last point in the result array are then replaced with mxPoints that take into account the terminal&rsquo;s perimeter and next point on the edge.</p><h4 class=CHeading>Parameters</h4><table border=0 cellspacing=0 cellpadding=0 class=CDescriptionList><tr><td class=CDLEntry>state</td><td class=CDLDescription><a href="mxCellState-php.html#mxCellState" class=LClass id=link8 onMouseOver="ShowTip(event, 'tt8', 'link8')" onMouseOut="HideTip('tt8')">mxCellState</a> that represents the edge to be updated.</td></tr><tr><td class=CDLEntry>source</td><td class=CDLDescription><a href="mxCellState-php.html#mxCellState" class=LClass id=link9 onMouseOver="ShowTip(event, 'tt8', 'link9')" onMouseOut="HideTip('tt8')">mxCellState</a> that represents the source terminal.</td></tr><tr><td class=CDLEntry>target</td><td class=CDLDescription><a href="mxCellState-php.html#mxCellState" class=LClass id=link10 onMouseOver="ShowTip(event, 'tt8', 'link10')" onMouseOut="HideTip('tt8')">mxCellState</a> that represents the target terminal.</td></tr><tr><td class=CDLEntry>points</td><td class=CDLDescription>List of relative control points.</td></tr><tr><td class=CDLEntry>result</td><td class=CDLDescription>Array of <a href="../util/mxPoint-php.html#mxPoint" class=LClass id=link11 onMouseOver="ShowTip(event, 'tt9', 'link11')" onMouseOut="HideTip('tt9')">mxPoints</a> that represent the actual points of the edge.</td></tr></table></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxEntityRelation"></a>mxEntityRelation</h2><div class=CBody><p>Implements an entity relation style for edges (as used in database schema diagrams).&nbsp;  At the time the function is called, the result array contains a placeholder (null) for the first absolute point, that is, the point where the edge and source terminal are connected.&nbsp; The implementation of the style then adds all intermediate waypoints except for the last point, that is, the connection point between the edge and the target terminal.&nbsp; The first ant the last point in the result array are then replaced with mxPoints that take into account the terminal&rsquo;s perimeter and next point on the edge.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxLoop"></a>mxLoop</h2><div class=CBody><p>Implements a self-reference, aka. loop.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxElbowConnector"></a>mxElbowConnector</h2><div class=CBody><p>Uses either &lt;SideToSide&gt; or &lt;TopToBottom&gt; depending on the horizontal flag in the cell style.&nbsp; &lt;SideToSide&gt; is used if horizontal is true or unspecified.&nbsp; See &lt;EntityRelation&gt; for a description of the parameters.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxSideToSide"></a>mxSideToSide</h2><div class=CBody><p>Implements a vertical elbow edge.&nbsp; See &lt;EntityRelation&gt; for a description of the parameters.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxTopToBottom"></a>mxTopToBottom</h2><div class=CBody><p>Implements a horizontal elbow edge.&nbsp; See &lt;EntityRelation&gt; for a description of the parameters.</p></div></div></div>

<div class="CClass"><div class=CTopic><h2 class=CTitle><a name="mxEdgeStyle"></a>mxEdgeStyle</h2><div class=CBody><p>Provides various edge styles to be used as the values for <a href="../util/mxConstants-php.html#mxConstants.STYLE_EDGE" class=LVariable id=link17 onMouseOver="ShowTip(event, 'tt2', 'link17')" onMouseOut="HideTip('tt2')">mxConstants.STYLE_EDGE</a> in a cell style.</p><!--START_ND_SUMMARY--><div class=Summary><div class=STitle>Summary</div><div class=SBorder><table border=0 cellspacing=0 cellpadding=0 class=STable><tr class="SGroup"><td class=SEntry><a href="#mxEdgeStyle.Variables" >Variables</a></td><td class=SDescription></td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#mxEdgeStyle.EntityRelation" id=link12 onMouseOver="ShowTip(event, 'tt3', 'link12')" onMouseOut="HideTip('tt3')">EntityRelation</a></td><td class=SDescription>Provides an entity relation style for edges (as used in database schema diagrams).</td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#mxEdgeStyle.Loop" id=link13 onMouseOver="ShowTip(event, 'tt4', 'link13')" onMouseOut="HideTip('tt4')">Loop</a></td><td class=SDescription>Provides a self-reference, aka. </td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#mxEdgeStyle.ElbowConnector" id=link14 onMouseOver="ShowTip(event, 'tt5', 'link14')" onMouseOut="HideTip('tt5')">ElbowConnector</a></td><td class=SDescription>Provides an elbow connector.</td></tr><tr class="SVariable SIndent1"><td class=SEntry><a href="#mxEdgeStyle.SideToSide" id=link15 onMouseOver="ShowTip(event, 'tt6', 'link15')" onMouseOut="HideTip('tt6')">SideToSide</a></td><td class=SDescription>Provides a side to side connector.</td></tr><tr class="SVariable SIndent1 SMarked"><td class=SEntry><a href="#mxEdgeStyle.TopToBottom" id=link16 onMouseOver="ShowTip(event, 'tt7', 'link16')" onMouseOut="HideTip('tt7')">TopToBottom</a></td><td class=SDescription>Provides a top to bottom connector.</td></tr></table></div></div><!--END_ND_SUMMARY--></div></div></div>

<div class="CGroup"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.Variables"></a>Variables</h3></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.EntityRelation"></a>EntityRelation</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $EntityRelation</td></tr></table></blockquote><p>Provides an entity relation style for edges (as used in database schema diagrams).</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.Loop"></a>Loop</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $Loop</td></tr></table></blockquote><p>Provides a self-reference, aka. loop.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.ElbowConnector"></a>ElbowConnector</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $ElbowConnector</td></tr></table></blockquote><p>Provides an elbow connector.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.SideToSide"></a>SideToSide</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $SideToSide</td></tr></table></blockquote><p>Provides a side to side connector.</p></div></div></div>

<div class="CVariable"><div class=CTopic><h3 class=CTitle><a name="mxEdgeStyle.TopToBottom"></a>TopToBottom</h3><div class=CBody><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $TopToBottom</td></tr></table></blockquote><p>Provides a top to bottom connector.</p></div></div></div>

</div><!--Content-->


<div id=Footer><a href="http://www.naturaldocs.org">Generated by Natural Docs</a></div><!--Footer-->


<div id=Menu><div class=MEntry><div class=MFile><a href="../index-txt.html">API Specification</a></div></div><div class=MEntry><div class=MFile><a href="../canvas/mxGdCanvas-php.html">canvas/<wbr>mxGdCanvas.php</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent1')">Io</a><div class=MGroupContent id=MGroupContent1><div class=MEntry><div class=MFile><a href="../io/mxCellCodec-php.html">mxCellCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodec-php.html">mxCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxCodecRegistry-php.html">mxCodecRegistry</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxModelCodec-php.html">mxModelCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxObjectCodec-php.html">mxObjectCodec</a></div></div><div class=MEntry><div class=MFile><a href="../io/mxStylesheetCodec-php.html">mxStylesheetCodec</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent2')">Model</a><div class=MGroupContent id=MGroupContent2><div class=MEntry><div class=MFile><a href="../model/mxCell-php.html">mxCell</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxCellPath-php.html">mxCellPath</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGeometry-php.html">mxGeometry</a></div></div><div class=MEntry><div class=MFile><a href="../model/mxGraphModel-php.html">mxGraphModel</a></div></div></div></div></div><div class=MEntry><div class=MFile><a href="../reader/mxGraphViewHtmlReader-php.html">mxGraphViewHtmlReader</a></div></div><div class=MEntry><div class=MFile><a href="../reader/mxGraphViewImageReader-php.html">mxGraphViewImageReader</a></div></div><div class=MEntry><div class=MFile><a href="../canvas/mxHtmlCanvas-php.html">mxHtmlCanvas</a></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent3')">Util</a><div class=MGroupContent id=MGroupContent3><div class=MEntry><div class=MFile><a href="../util/mxConstants-php.html">mxConstants</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEvent-php.html">mxEvent</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEventObject-php.html">mxEventObject</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxEventSource-php.html">mxEventSource</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxImageBundle-php.html">mxImageBundle</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxLog-php.html">mxLog</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxPoint-php.html">mxPoint</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxRectangle-php.html">mxRectangle</a></div></div><div class=MEntry><div class=MFile><a href="../util/mxUtils-php.html">mxUtils</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent4')">View</a><div class=MGroupContent id=MGroupContent4><div class=MEntry><div class=MFile><a href="mxCellState-php.html">mxCellState</a></div></div><div class=MEntry><div class=MFile><a href="mxConnectionConstraint-php.html">mxConnectionConstraint</a></div></div><div class=MEntry><div class=MFile id=MSelected>mxEdgeStyleFunction</div></div><div class=MEntry><div class=MFile><a href="mxGraph-php.html">mxGraph</a></div></div><div class=MEntry><div class=MFile><a href="mxGraphView-php.html">mxGraphView</a></div></div><div class=MEntry><div class=MFile><a href="mxPerimeter-php.html">mxPerimeterFunction</a></div></div><div class=MEntry><div class=MFile><a href="mxStyleRegistry-php.html">mxStyleRegistry</a></div></div><div class=MEntry><div class=MFile><a href="mxStylesheet-php.html">mxStylesheet</a></div></div></div></div></div><div class=MEntry><div class=MGroup><a href="javascript:ToggleMenu('MGroupContent5')">Index</a><div class=MGroupContent id=MGroupContent5><div class=MEntry><div class=MIndex><a href="../../index/Classes.html">Classes</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/General.html">Everything</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Files.html">Files</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Functions.html">Functions</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Interfaces.html">Interfaces</a></div></div><div class=MEntry><div class=MIndex><a href="../../index/Variables.html">Variables</a></div></div></div></div></div><script type="text/javascript"><!--
var searchPanel = new SearchPanel("searchPanel", "HTML", "../../search");
--></script><div id=MSearchPanel class=MSearchPanelInactive><input type=text id=MSearchField value=Search onFocus="searchPanel.OnSearchFieldFocus(true)" onBlur="searchPanel.OnSearchFieldFocus(false)" onKeyUp="searchPanel.OnSearchFieldChange()"><select id=MSearchType onFocus="searchPanel.OnSearchTypeFocus(true)" onBlur="searchPanel.OnSearchTypeFocus(false)" onChange="searchPanel.OnSearchTypeChange()"><option  id=MSearchEverything selected value="General">Everything</option><option value="Classes">Classes</option><option value="Files">Files</option><option value="Functions">Functions</option><option value="Interfaces">Interfaces</option><option value="Variables">Variables</option></select></div><script language=JavaScript><!--
HideAllBut([4, 5], 6);// --></script></div><!--Menu-->



<!--START_ND_TOOLTIPS-->
<div class=CToolTip id="tt1"><div class=CFunction><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td><table border=0 cellspacing=0 cellpadding=0><tr><td class="PBeforeParameters  prettyprint "nowrap>public function apply(</td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$state,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$source,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$target,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap></td><td class="PParameter  prettyprint " nowrap>$points,</td></tr><tr><td></td><td class="PParameterPrefix  prettyprint " nowrap>&amp;</td><td class="PParameter  prettyprint " nowrap>$result</td><td class="PAfterParameters  prettyprint "nowrap>)</td></tr></table></td></tr></table></blockquote>Implements an edge style function. </div></div><div class=CToolTip id="tt2"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $STYLE_EDGE</td></tr></table></blockquote>Defines the key for the edge style. </div></div><div class=CToolTip id="tt3"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $EntityRelation</td></tr></table></blockquote>Provides an entity relation style for edges (as used in database schema diagrams).</div></div><div class=CToolTip id="tt4"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $Loop</td></tr></table></blockquote>Provides a self-reference, aka. </div></div><div class=CToolTip id="tt5"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $ElbowConnector</td></tr></table></blockquote>Provides an elbow connector.</div></div><div class=CToolTip id="tt6"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $SideToSide</td></tr></table></blockquote>Provides a side to side connector.</div></div><div class=CToolTip id="tt7"><div class=CVariable><blockquote><table border=0 cellspacing=0 cellpadding=0 class="Prototype"><tr><td class="prettyprint">public static $TopToBottom</td></tr></table></blockquote>Provides a top to bottom connector.</div></div><div class=CToolTip id="tt8"><div class=CClass>Represents the current state of a cell in a given mxGraphView.</div></div><div class=CToolTip id="tt9"><div class=CClass>Implements a 2-dimensional point with double precision coordinates.</div></div><!--END_ND_TOOLTIPS-->




<div id=MSearchResultsWindow><iframe src="" frameborder=0 name=MSearchResults id=MSearchResults></iframe><a href="javascript:searchPanel.CloseResultsWindow()" id=MSearchResultsWindowClose>Close</a></div>


<script language=JavaScript><!--
if (browserType) {if (browserVer) {document.write("</div>"); }document.write("</div>");}// --></script></body></html>